package com.requestfactory.wire.spi;

import com.requestfactory.wire.WireSkeletonException;

public abstract class WireSPISkeleton {

	protected final WireSPIServerId wireSPIServerId;
	
	protected WireSPISkeleton(WireSPIServerId wireSPIServerId) { 
		assert wireSPIServerId != null;
		this.wireSPIServerId = wireSPIServerId; 
	}
	
	public WireSPIServerId getWireSPIServerId() {
		return wireSPIServerId;
	}

	public abstract String getWireSkeletonURL();
	
	public abstract void bindService(
			Class<?> serviceInterfaceClass, 
			Object serviceImplementation)
	throws WireSkeletonException;

}

